package com.demo.api;

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.Properties;

import org.apache.log4j.Logger;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.demo.util.PropertiesHelper;
import com.demo.util.Upload;

public class TulingApiProcess {
	private static String key = "";

	static {
		Properties r = PropertiesHelper.loadProperty("/weixin.properties");
		if (!r.isEmpty()) {
			try {
				key = r.getProperty("TuLingKey");
			} catch (Exception e) {
				Logger.getLogger(Upload.class).error("无法读取参数", e);
			}
		} else {
			Logger.getLogger(Upload.class).error("无法读取 weixin.properties");
		}
	}
	 /** 
     * 调用图灵机器人api接口，获取智能回复内容，解析获取自己所需结果 
     * @param content 
     * @return 
     */ 
    public String getTulingResult(String content){  
        /** 此处为图灵api接口，参数key需要自己去注册申请，先以11111111代替 */ 
        String apiUrl = "http://www.tuling123.com/openapi/api?key=ACCESS_KEY&info=";  
        apiUrl=apiUrl.replace("ACCESS_KEY",key);
        String param = "";  
        param = apiUrl+content;  
        String result="";
        /** 发送httpget请求 */ 
		String jsonResult = com.demo.kits.HttpKit.get(param,"utf-8");
		JSONObject jsonTexts = (JSONObject) JSON.parse(jsonResult);

       
        /** 请求失败处理 */ 
        if(null==jsonResult){  
            return "对不起，你说的话真是太高深了……";  
        }  
          
            //以code=100000为例，参考图灵机器人api文档  
            if(jsonTexts.getString("code").equals("100000")){  
                result = jsonTexts.getString("text");  
            }  
     
        return result;  
    }  
}
